package com.ys.arruntily;

import java.util.Arrays;

/**
 * @author CodeYang
 * @Description Arrays 部分代码实现
 * @Date 2020/12/11 19:06
 */
public class Arrays部分代码实现 {

    public static void main(String[] args) {
        int[] arr = {1, 3, 5, 7, 8, 9, 10};
        System.out.println(Arrays.toString(arr));
        System.out.println(toString(arr));
    }

    /**
     * Arrays.toString() 功能实现:
     *
     * @param a
     * @return
     */
    public static String toString(int[] a) {
        //1 非空判断
        if (a == null) {
            return null;
        }
        // 2 数组不是null(空对象)时,判断数组的实际长度是否为0--如果长度为0 返回[]
        int arrSize = a.length - 1;
        if (arrSize < 0) {
            return "[]";
        }
        // 使用StringBuffer 来左字符串拼接来做,这样线程更加安全
        StringBuffer str = new StringBuffer();
        str.append("[");
        for (int i = 0; ; i++) {
            str.append(a[i]);
            if (i == arrSize) {

                return str.append("]").toString();
            }
            str.append(", ");
        }

    }


}
